export const getRectanglePoint = (lat1, lng1, lat2, lng2) => {
	return {
		points: [{
				latitude: Math.max(lat1, lat2),
				longitude: Math.min(lng1, lng2)
			},
			{
				latitude: Math.max(lat1, lat2),
				longitude: Math.max(lng1, lng2)
			},
			{
				latitude: Math.min(lat1, lat2),
				longitude: Math.max(lng1, lng2)
			},
			{
				latitude: Math.min(lat1, lat2),
				longitude: Math.min(lng1, lng2)
			}
		],
		center: {
			latitude: (lat1 + lat2) / 2,
			longitude: (lng1 + lng2) / 2
		}
	}
}

export const calculateCoordinates = (currentLat, currentLng, dance) => {
	 const R = 6371000; // 地球半径，单位：米
	 // 北向dance米
	 const latNorth = lat + (dance / R) * (180 / Math.PI);
	 const lngNorth = lng;
	 
	 // 南向dance米
	 const latSouth = lat - (dance / R) * (180 / Math.PI);
	 const lngSouth = lng;
	 
	 // 东向100米
	 const latEast = lat;
	 const lngEast = lng + (dance / R) * (180 / Math.PI) / Math.cos(lat * Math.PI / 180);
	 // 西向100米
	 const latWest = lat;
	 const lngWest = lng - (dance / R) * (180 / Math.PI) / Math.cos(lat * Math.PI / 180);
	 return {
		 north: { lat: latNorth, lng: lngNorth },
		 south: { lat: latSouth, lng: lngSouth },
		 east: { lat: latEast, lng: lngEast },
		 west: { lat: latWest, lng: lngWest }
	 };
}

export const DrawState = {
	Empty: null,
	CircleCenterEnd: "CircleCenterEnd",
	CircleEnd: "CircleEnd",
	RectangleVertexEnd: "RectangleVertexEnd",
	RectangleEnd: "RectangleEnd",
	PolygonNotClose: "PolygonNotClose",
	PolygonClosed: "PolygonClosed",
	PolygonEnd: "PolygonEnd"

}